package com.xnew.manager.elevator.service;

import com.xnew.bean.common.SysUserInfo;
import com.xnew.manager.elevator.entity.ElevatorInfo;
import com.xnew.utils.DataInput;
import com.xnew.utils.DataOutput;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface ElevatorService {

    /**
     * 电梯列表
     *
     * @param input
     * @return
     */
    List<ElevatorInfo> elevatorList(DataInput input);

    /**
     * 电梯新增
     *
     * @param elevatorInfo
     * @param userInfo
     * @return
     */
    DataOutput elevatorAdd(ElevatorInfo elevatorInfo, SysUserInfo userInfo);

    /**
     * 电梯修改
     *
     * @param elevatorInfo
     * @param userInfo
     * @return
     */
    DataOutput elevatorUpdate(ElevatorInfo elevatorInfo, SysUserInfo userInfo);

    /**
     * 根据id查询电梯基本信息
     *
     * @param elId
     * @return
     */
    ElevatorInfo elevatorDetailById(String elId);

    /**
     * 电梯生效/失效
     *
     * @param elevatorInfo
     * @param userInfo
     * @return
     */
    DataOutput elevatorEffectiveOrInvalid(ElevatorInfo elevatorInfo, SysUserInfo userInfo);

    /**
     * 电梯删除
     *
     * @param elId
     * @return
     */
    DataOutput elevatorDelete(String elId);

    /**
     * 电梯信息导入解析入库
     *
     * @param multipartFile
     * @param userInfo
     * @return
     */
    DataOutput elevatorImportSave(MultipartFile multipartFile, SysUserInfo userInfo);
}
